package values.avatar
{
import flash.events.EventDispatcher;
import flash.events.IEventDispatcher;

/**
 * AvatarPropertyPluser
 * @author jliang
 *
 */
public class AvatarPropertyPluser extends EventDispatcher implements IAvatarPropertyPluser
{
	//==========================================================================
	//  Constructor
	//==========================================================================
	public function AvatarPropertyPluser(owner:IAvatarValue, name:String)
	{
		super();
		
		_avatar = owner;
		_name = name;
	}
	//==========================================================================
	//  Properties
	//==========================================================================
	protected var _avatar:IAvatarValue;

	public function get avatar():IAvatarValue
	{
		return _avatar;
	}
	
	protected var _name:String;
	
	public function get name():String
	{
		return _name;
	}
	
	
	
	protected var _maxHP:Number = 0;
	
	public function get maxHP():Number
	{
		return _maxHP;
	}

	public function set maxHP(value:Number):void
	{
		_maxHP = value;
	}

	protected var _initMP:Number = 0;	
	
	public function get initMP():Number
	{
		return _initMP;
	}

	public function set initMP(value:Number):void
	{
		_initMP = value;
	}
	
	protected var _mpRecover:Number = 0;
	
	public function get mpRecover():Number
	{
		return _mpRecover;
	}

	public function set mpRecover(value:Number):void
	{
		_mpRecover = value;
	}

	protected var _normalPower:Number = 0;
	
	public function get normalPower():Number
	{
		return _normalPower;
	}

	public function set normalPower(value:Number):void
	{
		_normalPower = value;
	}
	
	protected var _skillPower:Number = 0;
	
	public function get skillPower():Number
	{
		return _skillPower;
	}

	public function set skillPower(value:Number):void
	{
		_skillPower = value;
	}
	
	protected var _elementPower:Number = 0;
	
	public function get elementPower():Number
	{
		return _elementPower;
	}

	public function set elementPower(value:Number):void
	{
		_elementPower = value;
	}
	
	protected var _normalDefense:Number = 0;
	
	public function get normalDefense():Number
	{
		return _normalDefense;
	}

	public function set normalDefense(value:Number):void
	{
		_normalDefense = value;
	}
	
	protected var _skillDefense:Number = 0;

	public function get skillDefense():Number
	{
		return _skillDefense;
	}

	public function set skillDefense(value:Number):void
	{
		_skillDefense = value;
	}
	
	protected var _elementDefense:Number = 0;

	public function get elementDefense():Number
	{
		return _elementDefense;
	}

	public function set elementDefense(value:Number):void
	{
		_elementDefense = value;
	}
	
	protected var _normalDamage:Number = 0;

	public function get normalDamage():Number
	{
		return _normalDamage;
	}

	public function set normalDamage(value:Number):void
	{
		_normalDamage = value;
	}
	
	protected var _skillDamage:Number = 0;

	public function get skillDamage():Number
	{
		return _skillDamage;
	}

	public function set skillDamage(value:Number):void
	{
		_skillDamage = value;
	}
	
	protected var _elementDamage:Number = 0;

	public function get elementDamage():Number
	{
		return _elementDamage;
	}

	public function set elementDamage(value:Number):void
	{
		_elementDamage = value;
	}
	
	protected var _moveCapability:Number = 0;

	public function get moveCapability():Number
	{
		return _moveCapability;
	}

	public function set moveCapability(value:Number):void
	{
		_moveCapability = value;
	}
	
	protected var _hitRate:Number = 0;

	public function get hitRate():Number
	{
		return _hitRate;
	}

	public function set hitRate(value:Number):void
	{
		_hitRate = value;
	}
	
	protected var _dodgeRate:Number = 0;

	public function get dodgeRate():Number
	{
		return _dodgeRate;
	}

	public function set dodgeRate(value:Number):void
	{
		_dodgeRate = value;
	}
	
	protected var _penetrateRate:Number = 0;

	public function get penetrateRate():Number
	{
		return _penetrateRate;
	}

	public function set penetrateRate(value:Number):void
	{
		_penetrateRate = value;
	}
	
	protected var _resistRate:Number = 0;

	public function get resistRate():Number
	{
		return _resistRate;
	}

	public function set resistRate(value:Number):void
	{
		_resistRate = value;
	}
	
	protected var _enforceRate:Number = 0;

	public function get enforceRate():Number
	{
		return _enforceRate;
	}

	public function set enforceRate(value:Number):void
	{
		_enforceRate = value;
	}
	
	protected var _blockRate:Number = 0;

	public function get blockRate():Number
	{
		return _blockRate;
	}

	public function set blockRate(value:Number):void
	{
		_blockRate = value;
	}
	
	protected var _blockEffect:Number = 0;

	public function get blockEffect():Number
	{
		return _blockEffect;
	}

	public function set blockEffect(value:Number):void
	{
		_blockEffect = value;
	}
	
	protected var _toughness:Number = 0;

	public function get toughness():Number
	{
		return _toughness;
	}

	public function set toughness(value:Number):void
	{
		_toughness = value;
	}
	
	protected var _critRate:Number = 0;

	public function get critRate():Number
	{
		return _critRate;
	}

	public function set critRate(value:Number):void
	{
		_critRate = value;
	}
	
	protected var _critEffect:Number = 0;

	public function get critEffect():Number
	{
		return _critEffect;
	}

	public function set critEffect(value:Number):void
	{
		_critEffect = value;
	}
	
	protected var _defenseRate:Number = 0;

	public function get defenseRate():Number
	{
		return _defenseRate;
	}

	public function set defenseRate(value:Number):void
	{
		_defenseRate = value;
	}
	
	protected var _suppressRate:Number = 0;

	public function get suppressRate():Number
	{
		return _suppressRate;
	}

	public function set suppressRate(value:Number):void
	{
		_suppressRate = value;
	}
	
	protected var _suppressEffect:Number = 0;

	public function get suppressEffect():Number
	{
		return _suppressEffect;
	}

	public function set suppressEffect(value:Number):void
	{
		_suppressEffect = value;
	}
	
	protected var _actRate:Number = 0;

	public function get actRate():Number
	{
		return _actRate;
	}

	public function set actRate(value:Number):void
	{
		_actRate = value;
	}
}
}

